Итак, у нас есть навигатор. Давайте посмотрим, как он будет работать с обычным проектом. Создаем проект с именем TestDao1 на базе диалогового окна. Создадим некую базу данных. Имя у нее TestDAO1, а в ней таблица Piple. Вот она.

Добавляем наш класс из компонентов.

Подключаем описание его к классу диалога.
///////////////////////////
// CTestDao1Dlg dialog
#include "DaoNavigator.h"
class CTestDao1Dlg : public CDialog
{
// Construction
public:
CTestDao1Dlg(CWnd* pParent = NULL); // standard constructor
CDaoNavigator cNavigator;
// Dialog Data
Создаем набор записей на основе таблице в базе данных.

Теперь этот набор записей как Foreig Class для диалогового окна, ну и стандартный код.
CTestDao1Dlg::CTestDao1Dlg(CWnd* pParent /*=NULL*/)
: CDialog(CTestDao1Dlg::IDD, pParent)
{
m_pSet = new CSet();
m_pSet->Open();
}
......
void CTestDao1Dlg::OnDestroy()
{
CDialog::OnDestroy();
delete m_pSet;
}
В OnInitDialog настраиваем навигатора.
BOOL CTestDao1Dlg::OnInitDialog()
{
CDialog::OnInitDialog();
cNavigator.SetRecordset(m_pSet);
......
}
Ну а теперь элементы управления на диалоговое окно, кнопки, код к ним.
void CTestDao1Dlg::OnButtonFirst()
{
SaveData();
cNavigator.OnButtonFirst();
UpdateData(FALSE);
}
void CTestDao1Dlg::OnButtonLast()
{
SaveData();
cNavigator.OnButtonLast();
UpdateData(FALSE);
}
void CTestDao1Dlg::OnButtonNext()
{
SaveData();
cNavigator.OnButtonNext();
UpdateData(FALSE);
}
void CTestDao1Dlg::OnButtonPrev()
{
SaveData();
cNavigator.OnButtonPrev();
UpdateData(FALSE);
}
Функция SaveData Вам известна из прошлых шагов. Как видите применение класса навигации просто сэкономило нам время. Самое главное всегда его применять, если в нем ошибка исправить надо будет один раз, в одном классе.